//分页插件 
/** 
ch 
**/
(function($){ 
 	var ms = { 
  		init:function(obj,args){ 
   			return (function(){ 
    			ms.fillHtml(obj,args); 
    			ms.bindEvent(obj,args); 
   			})(); 
  		}, 
  		//填充html 
  		fillHtml:function(obj,args){ 
   			return (function(){ 
    			obj.empty(); 
    		//上一页 
    			if(args.current > 1){ 
     				obj.append('<a href="javascript:;" class="prevPage">上一页</a>'); 
    			}else{ 
     				obj.remove('.prevPage'); 
     				obj.append('<span class="disabled">上一页</span>'); 
    			}	 
    		//中间页码 
    			if(args.current != 1 && args.current >= 4 && args.pageCount != 4){ 
     				obj.append('<a href="javascript:;" class="tcdNumber">'+1+'</a>'); 
    			} 
    			if(args.current-2 > 2 && args.current <= args.pageCount && args.pageCount > 5){ 
     				obj.append('<span>...</span>'); 
    			} 
			    var start = args.current -2,end = args.current+2; 
			    if((start > 1 && args.current < 4)||args.current == 1){ 
			     end++; 
			    } 
			    if(args.current > args.pageCount-4 && args.current >= args.pageCount){ 
			     start--; 
			    } 
    			for (;start <= end; start++) { 
     				if(start <= args.pageCount && start >= 1){ 
      					if(start != args.current){ 
       						obj.append('<a href="javascript:;" class="tcdNumber">'+ start +'</a>'); 
      				}else{ 
       					obj.append('<span class="current">'+ start +'</span>'); 
      			} 
     		} 
    	} 
			    if(args.current + 2 < args.pageCount - 1 && args.current >= 1 && args.pageCount > 5){ 
			     obj.append('<span>...</span>'); 
			    } 
			    if(args.current != args.pageCount && args.current < args.pageCount -2 && args.pageCount != 4){ 
			     obj.append('<a href="javascript:;" class="tcdNumber">'+args.pageCount+'</a>'); 
			    } 
			    //下一页 
			    if(args.current < args.pageCount){ 
			     obj.append('<a href="javascript:;" class="nextPage">下一页</a>'); 
			    }else{ 
			     obj.remove('.nextPage'); 
			     obj.append('<span class="disabled">下一页</span>'); 
			    } 
			   })(); 
			  }, 
			  //绑定事件 
			  bindEvent:function(obj,args){ 
			   	return (function(){ 
			    	obj.on("click","a.tcdNumber",function(){ 
			     		var current = parseInt($(this).text()); 
			     		ms.fillHtml(obj,{"current":current,"pageCount":args.pageCount}); 
			     		if(typeof(args.backFn)=="function"){ 
					      args.backFn(current); 
					     } 
					  }); 
				    //上一页 
				    obj.on("click","a.prevPage",function(){ 
				     var current = parseInt(obj.children("span.current").text()); 
				     ms.fillHtml(obj,{"current":current-1,"pageCount":args.pageCount}); 
				     if(typeof(args.backFn)=="function"){ 
				      args.backFn(current-1); 
				     } 
				    }); 
				    //下一页 
				    obj.on("click","a.nextPage",function(){ 
				     var current = parseInt(obj.children("span.current").text()); 
				     ms.fillHtml(obj,{"current":current+1,"pageCount":args.pageCount}); 
				     if(typeof(args.backFn)=="function"){ 
				      args.backFn(current+1); 
				     } 
				    }); 
			   })(); 
			  } 
			 } 
		 $.fn.createPage = function(options){ 
		  var args = $.extend({ 
		   pageCount : 10, 
		   current : 1, 
		   backFn : function(){} 
		  },options); 
		  ms.init(this,args); 
		 } 

})(jQuery);

